This section introduces aspects that may be helpful to facilitating a better understanding of the inventions. Accordingly, the statements of this section are to be read in this light and are not to be understood as admissions about what is in the prior art or what is not in the prior art.
Secure function evaluation (SFE) is a cryptographic technique that allows mutually distrustful parties to evaluate a function on their respective inputs, while maintaining the privacy of the inputs. For instance, two-party SFE allows two parties to evaluate a given function on respective inputs x and y, while maintaining the privacy of both x and y. SFE enables a variety of electronic transactions previously impossible, or at least impractical, due to the mutual mistrust of transaction participants. An electronic transaction is a transaction performed using at least two processing devices electronically connected via at least one communication network. Examples of electronic transactions in which SFE have been applied include, but are not limited to, auctions, contract signing, and database mining.
SFE of private functions is an extension of two-party SFE where the evaluated function is known only by one party and needs to be kept secret (i.e., all attributes of the function other than the function size, the number of inputs, and the number of outputs are hidden from the other party). Examples of private functions include, but are not limited to, an airport no-fly check function, a credit evaluation function, a background checking function, and a medical history checking function. One technique for keeping the function secret is to represent the function as a garbled circuit (GC). The GC-approach for two-party SFE allows one party to compute the function (being represented by the circuit) under encryption.